/* eslint-disable */
// eslint-disable-next-line
import { MrxDbgUiPrPoint, MxFun, MxDbRect } from "mxdraw";

// 绘制矩形的函数
const drawRectangleAtTwoPoints = async () => {
  const getPoint = new MrxDbgUiPrPoint();

  // 创建矩形对象
  const rect = new MxDbRect();
  // 设置图层为“Comment”
  rect.layer = "Comment";
  // 获取用户点击的第一个点，作为矩形的一个角
  const firstPoint = await getPoint.go();
  if (!firstPoint) {
    throw new Error("获取第一个点失败");
  }

  // 设置第一个点为矩形的起始位置
  rect.pt1 = firstPoint;

  // 设置矩形颜色
  rect.setColor(0xFF22);  // 可修改为你需要的颜色值

  // 设置动态绘制回调函数
  getPoint.setUserDraw((currentPoint, worldDrawComment) => {
    // 动态设置第二个点的位置
    rect.pt2 = currentPoint;
    // 绘制矩形对象
    worldDrawComment.drawCustomEntity(rect);
  });

  // 获取第二次点击的点，作为矩形的对角点
  const secondPoint = await getPoint.go();
  if (!secondPoint) {
    throw new Error("获取第二个点失败");
  }
  rect.pt2 = secondPoint;

  // 将最终的矩形添加到绘图中
  MxFun.getCurrentDraw().addMxEntity(rect);
};

export { drawRectangleAtTwoPoints };
